Skip to content

Fix the Documentation build under ModelingToolkit v11 - #68

Merged
ChrisRackauckas merged 3 commits into
SciML:mainfrom
ChrisRackauckas-Claude:fix-docs-mtk-v11
Aug 28, 2026
Merged

Fix the Documentation build under ModelingToolkit v11#68
ChrisRackauckas merged 3 commits into
SciML:mainfrom
ChrisRackauckas-Claude:fix-docs-mtk-v11

Conversation

@ChrisRackauckas-Claude

@ChrisRackauckas-Claude ChrisRackauckas-Claude commented Aug 26, 2026

Copy link
Copy Markdown
Member

Ignore this PR until it has been reviewed by @ChrisRackauckas.

What changed and why

The Documentation workflow became red when ModelingToolkit v11 was resolvable in docs/Project.toml; the previous v9 cap in #64 was superseded by #65. This PR migrates the lecture examples to current APIs instead of restoring the cap.

The migration covers the component DSL move to SciCompDSL, explicit solver-package imports, the replacement of removed defaults helpers with bindings and initial conditions, current ModelingToolkitStandardLibrary constructors, current solution statistics/indexing APIs, and the hydraulic examples. The final docs failure was unrelated to those examples: MathWorks consistently returns HTTP 403 to Documenter for the referenced hydraulic-chamber page, so only that URL is excluded from link checking while all other links remain checked.

Verification

Failing before the final fix:

$ /home/crackauc/.juliaup/bin/julia +1.11 --color=yes --project=docs --code-coverage=user docs/make.jl
Error: linkcheck 'https://www.mathworks.com/help/simscape/ref/variablehydraulicchamber.html' status: 403.
ERROR: LoadError: `makedocs` encountered an error [:linkcheck]
[exit 1]

Passing with the final fix applied:

$ /home/crackauc/.juliaup/bin/julia +1.11 --color=yes --project=docs --code-coverage=user docs/make.jl
[ Info: CheckDocument: running document checks.
[ Info: RenderDocument: rendering document.
[ Info: HTMLWriter: rendering HTML pages.
[exit 0]

Additional local checks on the rebased branch:

$ GROUP=QA /home/crackauc/.juliaup/bin/julia +1.11 --project=. -e 'using Pkg; Pkg.test()'
Test Summary:            | Pass  Total  Time
ModelingToolkitCourse.jl |    2      2  2.9s
Testing ModelingToolkitCourse tests passed

$ typos docs/make.jl
[exit 0]

$ /home/crackauc/.juliaup/bin/julia +1.11 --project=.tmp/runic-env -e 'using Runic; exit(Runic.main(["--check", "."]))'
[exit 0]

Not verified locally

A post-rebase repetition of the full docs command completed all examples but GitHub returned transient HTTP 429 responses for two GitHub-hosted links; both returned HTTP 200 immediately with curl. Those valid links were not ignored or silenced. The successful full build above used the same final docs changes; CI remains the authoritative post-rebase link-check run. Local deploydocs skipped deployment because the checkout was not a recognized CI environment. GPU and downstream jobs are not applicable to this docs-only change.

The only link-check exception added here is the persistently bot-blocked MathWorks URL; broader GitHub link checking remains enabled.

🤖 Generated with Codex (version unknown) (model: gpt-5; session: 01a04793-6175-7cf2-b514-9bcca858906d, local session ID)

ChrisRackauckas and others added 3 commits August 28, 2026 06:01
The Documentation build has been failing since MTK v11 became resolvable in
the docs environment: the component DSL moved to SciCompDSL.jl, solvers are no
longer re-exported by DifferentialEquations v8, `missing_variable_defaults` and
`defaults` were removed, several standard-library components changed their
constructor signatures, and symbolic defaults are now bindings rather than
initial conditions. This updates the lecture examples to the current APIs so
`makedocs` runs every `@example` block again, instead of capping MTK to v9.

The hydraulic debugging model in lecture 6 is rewritten in the same functional
`ODESystem` style used by the rest of that lecture, and its flattened variable
names use `_` instead of the `₊` namespace separator, which MTK now strips
defaults from.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
MathWorks returns HTTP 403 to Documenter's link checker for the referenced hydraulic chamber page. Exclude only that URL while retaining link checks for all other external references.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>

Co-Authored-By: Codex <noreply@openai.com>

Agent-Harness: Codex (version unknown)

Agent-Model: gpt-5

Agent-Session: 01a04793-6175-7cf2-b514-9bcca858906d (local session ID)
@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member Author

Added commit 8dda68d after rebasing onto current main.

The final failure was Documenter receiving HTTP 403 from the MathWorks hydraulic-chamber reference. The new commit adds that exact URL to the existing linkcheck_ignore list; global link checking remains enabled.

Local discrimination:

  • Before: the full Julia 1.11 docs command exited 1 with the MathWorks 403 link-check error.
  • After: the same command exited 0 and completed CheckDocument, RenderDocument, and HTMLWriter.
  • Rebased branch: root tests passed 2/2, Julia Runic passed, and typos docs/make.jl passed.
  • A repeated post-rebase link scan hit transient GitHub HTTP 429 responses; the affected GitHub URLs immediately returned 200 via curl, so they were not added to the ignore list. CI will provide the clean post-rebase network run.

AI attribution: Codex (version unknown), model gpt-5, local session ID 01a04793-6175-7cf2-b514-9bcca858906d.

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member Author

Final CI verification for commit 8dda68d:

All four checks are green. The PR remains a draft and should be ignored until reviewed by @ChrisRackauckas.

@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review August 28, 2026 11:56
@ChrisRackauckas
ChrisRackauckas merged commit c1b2bd4 into SciML:main Aug 28, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants